package gov.gfbzb.advice.controller.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serial;
import java.io.Serializable;

/**
 * user 实体类
 * @author 小宇
 * @since 2025-07-05
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Schema(types = "User对象", description = "用户表")
public class UserDTO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 自增id
     */
    @TableId(value = "id", type = IdType.AUTO)
    @Schema(name = "id", description = "自增id")
    private Integer id;

    /**
     * 真实姓名
     */
    @Schema(name = "realName", description = "真实姓名")
    private String realName;

    /**
     * 用户名
     */
    @Schema(name = "userName", description = "用户名")
    private String userName;

    /**
     * 手机号
     */
    @Schema(name = "phone", description = "手机号")
    private String phone;

    /**
     * 密码
     */
    @Schema(name = "password", description = "密码")
    private String password;

    /**
     * 角色
     */
    @Schema(name = "role", description = "角色")
    private String role;

    /**
     * 性别
     */
    @Schema(name = "gender", description = "性别")
    private String gender;

    /**
     * 年龄
     */
    @Schema(name = "age", description = "年龄")
    private String age;

    /**
     * 所属市
     */
    @Schema(name = "city", description = "所属市")
    private String city;

    /**
     * 所属区县
     */
    @Schema(name = "county", description = "所属区县")
    private String county;

    /**
     * 用户状态 0正常 1禁用
     */
    @Schema(name = "userStatus", description = "用户状态 0正常 1禁用")
    private Integer userStatus;
}
